Electronic mail (e-mail) has become an extremely popular communications medium. Computer users have replaced many forms of paper correspondence with e-mail correspondence to capitalize on the speed and economy of electronic communication. The typical office or campus environment utilizes a Local Area Network (LAN) to connect computer users to a central e-mail system. Generally, a LAN connection provides a direct line of communication between an individual user's computer (remote computer) and the e-mail system (mail server). LAN connections are usually hard-wired into a building or across a campus so that all of the remote computers in the network can enjoy the benefits of a direct connection to the server. However, as portable computers have become more popular and powerful, users are demanding access to mail servers from locations where direct, hard-wired connections are not feasible.
Typically, a connection between the remote computer and the mail server can be either a direct connection, provided by a Local Area Network (LAN), or a dial-up connection, provided through a modem connection to a network node. At work a portable computer user might have a docking station that provides a LAN connection. When away from the office with the portable computer undocked, the user might utilize a modem to connect to the mail server. A computer network that supports modem connections is commonly referred to as a dial-up network, because it typically utilizes a telephone connection between the modem and the server.
Because a LAN connection is a direct, hard-wired connection, it can provide high-speed communications capabilities between the mail server and the remote computer. A remote computer user can connect to the mail server (go “online”), access his or her mail, send outgoing e-mail messages, check for and receive incoming e-mail messages, and remain online for extended periods. As mail is sent to the remote computer user, via the mail server, the mail server processes and delivers the mail to the remote computer user's e-mail server. The remote computer periodically polls the server to check the user's e-mail mailbox for new incoming e-mail messages.
A dial-up connection provides access to e-mail for remote computer users that are located in areas where LAN access to the mail server is unavailable (e.g., at home, at a hotel, etc.). Typically, a dial-up connection is utilized where the remote computer user wishes to use a modem to connect to the mail server via a telephone connection. Because the connection is not direct, communication between the mail server and the remote computer is slower than with a LAN connection. The remote computer user, connected via a dial-up connection, can perform all of the operations that could be performed via a LAN connection, but each operation usually takes more time.
The remote computer user will typically perform e-mail operations by utilizing an e-mail client application program module (e-mail client) that runs on the remote computer. The e-mail client may communicate with the mail server to send and receive e-mail messages in a format that is readable to both the remote computer and the mail server. The mail server also may have an e-mail application program module operating to communicate with the remote computer's e-mail client.
One option that many e-mail clients offer permits the remote computer user to operate in an offline mode. Offline mode is generally a means by which the user can compose e-mail messages and read previously received e-mail messages, regardless of whether the user's computer is actually connected to a mail server. Communication between the remote computer and the mail server is not attempted by an e-mail client in offline mode.
In this context, “online state” is used to indicate the existence of an operable line of communication between a mail server and a remote computer, regardless of whether the communication line is being utilized by an e-mail client. “Online mode” is used to indicate that an e-mail client running on a remote computer is operating in a manner that requires an operable line of communication between a mail server and the remote computer. That is, for the e-mail client to successfully operate in online mode, the remote computer on which the e-mail client is running must be in an online state.
Similarly, “offline state” indicates the absence of an operable line of communication between a mail server and a remote computer. “Offline mode” indicates that an e-mail client running on a remote computer is operating in a manner that does not require an online state. An offline mode of operation does not typically require that the remote computer be in an offline state. Unlike online mode, offline mode can be successfully implemented by an e-mail client without regard to the online/offline state of the remote computer.
The ability to process e-mail messages in offline mode is desirable to e-mail users. When a user wants to prepare e-mail messages for subsequent transmission, the user may do so without having to connect to the mail server. Where the user doesn't have access to an electronic connection to the server or the user's server has crashed, this capability permits the user to perform his or her composition work and then send the composed messages, as a batch, at a later time. This mode of operation permits the user to work more efficiently, by not limiting composition to only those times that the user is connected to a mail server.
Offering users the capability of operating in either online or offline mode has, unfortunately, spawned another problem. Most e-mail clients are not well equipped to accommodate a transition between online and offline modes of operation. Consequently, a computer's transition between online and offline states can disrupt effective e-mail message processing.
The typical use of a portable computer presents a representative illustration of a transition between online and offline states. A user might have a portable computer that is equipped to operate in conjunction with a docking station. Docking stations are well known to those skilled in the computer arts and typically provide a base station for a portable computer. A docking station often includes such devices as a power supply, expansion slots, a monitor, a keyboard connector, connectors for CD-ROM, floppy or hard drives, and a LAN connection. The LAN connection can provide a communication line between the portable computer and a mail server.
The portable computer might be docked in a docking station one minute and undocked the next minute. When a portable computer that is processing e-mail messages in online mode is undocked from its docking station, the connection between the computer and the mail server will be severed. Most e-mail clients do not provide a means for responding to this transition between online and offline states. The user will be unable to continue processing e-mail because the e-mail client will be attempting to operate as if the laptop were still connected to the mail server. In such a case, the user will usually experience an unending series of warning messages indicating the loss of a connection to the mail server. The user is forced to terminate the e-mail client and either to restart after reconnecting to the mail server or to restart in offline mode.
This problem is not limited to the example of a portable computer with a docking station, but can occur with any computer that loses an operating communications line with a mail server. No effective solution to this problem has been proffered in the prior art. Indeed, most e-mail clients either assume that the remote computer user is always in online mode, or allow the remote computer user to select online or offline modes of operation, but are unable to accommodate a transition between online and offline states of operation.
Therefore, there is a need in the art for an improved method of effecting a transition between online and offline modes of email processing operation where there is a transition between online and offline states. This method should provide the remote computer user an interface for configuring the responsive actions to be taken in the event of a state change. In addition to an improved configuration interface, the system should provide the capability to automatically respond to the detection that the remote computer has made a transition between online and offline states and to continue to process e-mail in accordance with a user's configuration settings.